/**
 * Copyright &copy; 2012-2016 <a href="https://github.com/thinkgem/jeesite">JeeSite</a> All rights reserved.
 */
package com.thinkgem.jeesite.modules.sys.entity.customer;

import com.fasterxml.jackson.annotation.JsonIgnore;
import com.thinkgem.jeesite.common.utils.excel.annotation.ExcelField;
import org.hibernate.validator.constraints.Length;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;

import com.thinkgem.jeesite.common.persistence.DataEntity;

import javax.validation.constraints.NotNull;

/**
 * customerEntity
 * @author jin
 * @version 2018-04-23
 */
public class Customer extends DataEntity<Customer> {
	
	private static final long serialVersionUID = 1L;
	private String liId;		// 理赔编号
	private String name;		// 客户姓名
	private String sex;		// 性别
	private String liLeixing;		// 理赔类型
	private String xinZhi;		// 事件性质
	private Date fsTime;		// 发生日期
	private Date sgTime;		// 身故日期
	private Date zdTime;		// 重大疾病日期
	private Date jdTime;		// 鉴定日期
	private Date baTime;		// 报案日期
	private Date slTime;		// 受理日期
	private String jg;		// 机构
	private String person;		// 当前作业人员
	private String changDuan;		// 长险/短险
	private String zhuang;		// 案件状态
	private String dq;		// 地区
	private String daoFlag;		// 导入标记
	private String dqName;      //地区名字
	private String baoTime;     //报案时间（转换）
	private String fashenTime;     //发生时间（转换）
	private String shenguTime;     //身故时间（转换）
	private String zhongdaTime;     //重大时间（转换）
	private String jiandingTime;     //鉴定时间（转换）
	private String shouliTime;     //受理时间（转换）
	
	public Customer() {
		super();
	}

	public Customer(String id){
		super(id);
	}

	@Length(min=0, max=255, message="理赔编号长度必须介于 0 和 255 之间")
	@ExcelField(title="理赔编号", align=2, sort=30)
	public String getLiId() {
		return liId;
	}

	public void setLiId(String liId) {
		this.liId = liId;
	}

	@JsonIgnore
	@NotNull(message="姓名不能为空")
	@ExcelField(title="客户姓名", align=2, sort=35)
	public String getName() {
		return name;
	}

	public void setName(String name) {
		this.name = name;
	}
	
	@Length(min=0, max=255, message="性别长度必须介于 0 和 255 之间")
	@ExcelField(title="性别", align=2, sort=40)
	public String getSex() {
		return sex;
	}

	public void setSex(String sex) {
		this.sex = sex;
	}
	
	@Length(min=0, max=255, message="理赔类型长度必须介于 0 和 255 之间")
	@ExcelField(title="理赔类型", align=2, sort=45)
	public String getLiLeixing() {
		return liLeixing;
	}

	public void setLiLeixing(String liLeixing) {
		this.liLeixing = liLeixing;
	}
	
	@Length(min=0, max=255, message="事件性质长度必须介于 0 和 255 之间")
	@ExcelField(title="事件性质", align=2, sort=50)
	public String getXinZhi() {
		return xinZhi;
	}

	public void setXinZhi(String xinZhi) {
		this.xinZhi = xinZhi;
	}
	
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	public Date getFsTime() {
		return fsTime;
	}

	public void setFsTime(Date fsTime) {
		this.fsTime = fsTime;
	}

	@ExcelField(title="发生日期", align=2, sort=55)
	public String getFashenTime() {
		return fashenTime;
	}

	public void setFashenTime(String fashenTime) {
		this.fashenTime = fashenTime;
	}

	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	public Date getSgTime() {
		return sgTime;
	}

	public void setSgTime(Date sgTime) {
		this.sgTime = sgTime;
	}

	@ExcelField(title="身故日期", align=2, sort=60)
	public String getShenguTime() {
		return shenguTime;
	}

	public void setShenguTime(String shenguTime) {
		this.shenguTime = shenguTime;
	}

	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	public Date getZdTime() {
		return zdTime;
	}

	public void setZdTime(Date zdTime) {
		this.zdTime = zdTime;
	}

	@ExcelField(title="重大疾病日期", align=2, sort=65)
	public String getZhongdaTime() {
		return zhongdaTime;
	}

	public void setZhongdaTime(String zhongdaTime) {
		this.zhongdaTime = zhongdaTime;
	}

	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	public Date getJdTime() {
		return jdTime;
	}

	public void setJdTime(Date jdTime) {
		this.jdTime = jdTime;
	}

	@ExcelField(title="鉴定日期", align=2, sort=70)
	public String getJiandingTime() {
		return jiandingTime;
	}

	public void setJiandingTime(String jiandingTime) {
		this.jiandingTime = jiandingTime;
	}

	@ExcelField(title="报案日期", align=2, sort=75)
	public String getBaoTime() {
		return baoTime;
	}

	public void setBaoTime(String baoTime) {
		this.baoTime = baoTime;
	}

	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	public Date getBaTime() {
		return baTime;
	}

	public void setBaTime(Date baTime) {
		this.baTime = baTime;
	}
	
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	public Date getSlTime() {
		return slTime;
	}

	public void setSlTime(Date slTime) {
		this.slTime = slTime;
	}

	@ExcelField(title="受理日期", align=2, sort=80)
	public String getShouliTime() {
		return shouliTime;
	}

	public void setShouliTime(String shouliTime) {
		this.shouliTime = shouliTime;
	}

	@Length(min=0, max=255, message="机构长度必须介于 0 和 255 之间")
	@ExcelField(title="机构", align=2, sort=85)
	public String getJg() {
		return jg;
	}

	public void setJg(String jg) {
		this.jg = jg;
	}
	
	@Length(min=0, max=255, message="当前作业人员长度必须介于 0 和 255 之间")
	@ExcelField(title="当前作业人员", align=2, sort=90)
	public String getPerson() {
		return person;
	}

	public void setPerson(String person) {
		this.person = person;
	}
	
	@Length(min=0, max=255, message="长险/短险长度必须介于 0 和 255 之间")
	@ExcelField(title="长险/短险", align=2, sort=95)
	public String getChangDuan() {
		return changDuan;
	}

	public void setChangDuan(String changDuan) {
		this.changDuan = changDuan;
	}
	
	@Length(min=0, max=255, message="案件状态长度必须介于 0 和 255 之间")
	@ExcelField(title="案件状态", align=2, sort=100)
	public String getZhuang() {
		return zhuang;
	}

	public void setZhuang(String zhuang) {
		this.zhuang = zhuang;
	}

	@Length(min=1, max=255, message="地区长度不能为空")
	public String getDq() {
		return dq;
	}

	public void setDq(String dq) {
		this.dq = dq;
	}
	
	@Length(min=1, max=1, message="导入标记长度必须介于 1 和 1 之间")
	public String getDaoFlag() {
		return daoFlag;
	}

	public void setDaoFlag(String daoFlag) {
		this.daoFlag = daoFlag;
	}

	@ExcelField(title="地区", align=2, sort=105)
	public String getDqName() {
		return dqName;
	}

	public void setDqName(String dqName) {
		this.dqName = dqName;
	}
}